package com.example.config;


import com.example.interceptor.LoginCheckInterceptor;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;

//这个类要实现一个WebMvcConfigurer的接口
@Configuration //加上这个注解后就代表当前这个类是一个配置类
public class WebConfig implements WebMvcConfigurer {
    //这里重写一个方法 addInterceptors

    @Autowired
    private LoginCheckInterceptor loginCheckInterceptor;


    @Override
    public void addInterceptors(InterceptorRegistry registry) {
        //这里通过registry来调用.addInterceptor()来添加一个拦截器
        //这里加入一个我们自己创建的拦截器LoginCheckInterceptor,当前这个拦截器已经成为IOC中的bean对象
        //所以要在成员变量中注入这个bean,然后将实现类对象传递进来.创建这个拦截器
        //然后在继续调用.addPathPatterns("/**");来指定拦截什么样的资源,,这里参数给的是 "/**" 表示拦截所有资元
        //.excludePathPatterns("/login")这个表示不拦截这个资源,其他资源都拦截
        registry.addInterceptor(loginCheckInterceptor).addPathPatterns("/**").excludePathPatterns("/login");//这里这个拦截器就已经配置好了
    }
}
